home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3 / f90 / pxfsetgid.z / pxfsetgid
Encoding:
Text File  |  2002-10-03  |  4.0 KB  |  92 lines

  1. PXFSETGID(3F)                                         Last changed: 1-22-99
  2.  
  3.  
  4. NNAAMMEE
  5.      PPXXFFSSEETTGGIIDD - Sets group ID
  6.  
  7. SSYYNNOOPPSSIISS
  8.      SSUUBBRROOUUTTIINNEE PPXXFFSSEETTGGIIDD ((_i_g_i_d,, _i_e_r_r_o_r))
  9.      IINNTTEEGGEERR _i_g_i_d,, _i_e_r_r_o_r
  10.  
  11. IIMMPPLLEEMMEENNTTAATTIIOONN
  12.      UNICOS, UNICOS/mk, and IRIX systems
  13.  
  14. SSTTAANNDDAARRDDSS
  15.      IEEE standard interface for FORTRAN 77
  16.  
  17. DDEESSCCRRIIPPTTIIOONN
  18.      On IRIX systems, this routine is in lliibbffoorrttrraann..ssoo which is linked by
  19.      default when compiling programs with the MIPSpro 7 Fortran 90 compiler
  20.      or when compiling programs with the --ccrraayylliibbss option to the MIPSpro
  21.      F77 compiler.
  22.  
  23.      The PPXXFFSSEETTGGIIDD routine uses the sseettggiidd(2) function to set the real
  24.      group ID, effective group ID, and saved-set group IDs of the calling
  25.      process.  The following conditions determine the setting of an ID.
  26.      They are checked in the following order, and the first condition that
  27.      is true is applied:
  28.  
  29.      * If the process has appropriate privilege, the real, effective, and
  30.        saved-set group IDs are all set to _i_g_i_d.
  31.  
  32.      * If ID is equal to either the real group ID, the effective group ID,
  33.        or the saved-set, group ID is set to _i_g_i_d.
  34.  
  35.      When using the CF90 compiler or MIPSpro 7 Fortran 90 compiler on
  36.      UNICOS, UNICOS/mk, or IRIX systems, all arguments must be of default
  37.      kind unless documented otherwise.  On UNICOS and UNICOS/mk, default
  38.      kind is KKIINNDD==88 for integer, real, complex, and logical arguments; on
  39.      IRIX, the default kind is KKIINNDD==44.
  40.  
  41.      The following is a list of valid arguments for this routine:
  42.  
  43.      _i_g_i_d      An input integer variable used to replace the current group
  44.                ID for the calling process.
  45.  
  46.      _i_e_r_r_o_r    An output integer variable that contains zero if PPXXFFSSEETTGGIIDD
  47.                was successful.  or nonzero if PPXXFFSSEETTGGIIDD was not successful.
  48.  
  49.      PPXXFFSSEETTGGIIDD may return EEIINNVVAALL if the value of the _i_g_i_d argument is out
  50.      of range or EEPPEERRMM if the process does not have the appropriate
  51.      privileges and _i_g_i_d does not match the real user ID.
  52.  
  53. NNOOTTEESS
  54.      On a UNICOS multilevel security (MLS) system, a process with the
  55.      effective privileges shown is granted the following abilities:
  56.  
  57.      PPrriivviilleeggee                DDeessccrriippttiioonn
  58.  
  59.      PPRRIIVV__SSEETTGGIIDD              The process may set the real group ID,
  60.                               effective group ID, and saved set-group-ID.
  61.  
  62.      On a UNICOS non-MLS system or a UNICOS MLS system with PPRRIIVV__SSUU
  63.      enabled, the super user may set the real group ID, effective group ID,
  64.      and saved set-group-ID.
  65.  
  66. EEXXAAMMPPLLEESS
  67.      In this example, the current user ID for the current process will be
  68.      obtained by calling PPXXFFGGEETTGGIIDD and then setting the group ID for the
  69.      current process by using the group ID returned by PPXXFFGGEETTGGIIDD.
  70.  
  71.           program pxftest
  72.           integer igid, ierror
  73.  
  74.           CALL PXFGETGID(igid, ierror)
  75.              if (ierror .eq. 0) then
  76.                 CALL PXFSETGID(igid, ierror)
  77.                 if (ierror .eq. 0) then
  78.                    print *,'group id set to ',igid
  79.                 else
  80.                    print *,'group id not set to ',igid,' because of error'
  81.                 endif
  82.              else
  83.                 print *,'could not obtain user ID  error = ',ierror
  84.              endif
  85.           end
  86.  
  87. SSEEEE AALLSSOO
  88.      sseettggiidd(2)
  89.  
  90.      _A_p_p_l_i_c_a_t_i_o_n _P_r_o_g_r_a_m_m_e_r'_s _L_i_b_r_a_r_y _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l for the printed
  91.      version of this man page.
  92.